package com.itheima.homework;

import java.util.Scanner;

/*已知某商场购物结算时支持如下三种结算方式：
1. 全额现金结算
2. 全额积分抵现，10积分 == 1元
3. 积分抵扣50元，剩余部分使用现金结算，10积分 == 1元
张三的账户积分余额为1000，现金余额为500，张三购买了80元商品，准备结算。
请设计程序定义三个方法（pay）分别模拟三种付款方式，在方法体中输出付款后的账户信息，
并在主方法中完成方法调用。要求格式如下：
*/
public class proTest02 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("本次的消费金额为:");
        double cost = sc.nextDouble();
        int integral = 1000;
        double money = 500.0;
        System.out.println("请输入1~3选择结算方式:");
        System.out.println("1:现金结算");
        System.out.println("2:全额积分抵现");
        System.out.println("3:积分抵扣50元,剩余现金支付");
        lo:
        while (true) {
            int way = sc.nextInt();
            if (way < 1 || way > 3) {
                System.out.println("输入的数据有误,请重新选择结算方式:");
            } else {
                switch (way) {
                    case 1:
                        method1(cost, money);
                        break lo;
                    case 2:
                        method2(cost, integral);
                        break lo;
                    default:
                        method3(cost, integral, money);
                        break lo;
                }
            }
        }
    }

    //全额现金结算
    public static void method1(double cost, double money) {
        System.out.println("现金支付-付款成功");
        System.out.println("本次消费" + cost + "元,收您:" + money + "元,找零:" + (money - cost) + "元");
    }

    //全额积分抵现
    public static void method2(double cost, int integral) {
        System.out.println("积分支付-付款成功");
        int costIntegral = (int)cost * 10;
        System.out.println("本次扣除积分" + costIntegral + ",账户剩余积分:" + (integral - costIntegral));
    }

    public static void method3(double cost, int jiFen, double money) {
        System.out.println("积分现金混合支付-付款成功");
        System.out.println("本次支付扣除积分500,账户剩余积分:500");
        System.out.println("本次支付实际扣款" + (cost - 500 / 10) + "元,您的账户剩余现金:" + (money - (cost - 500 / 10)) + "元");
    }
}
